<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>后台管理-登陆</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta http-equiv="Access-Control-Allow-Origin" content="*">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="format-detection" content="telephone=no">
    <link rel="stylesheet" th:href="@{/layui/css/layui.css}" media="all">
    <!--[if lt IE 9]>
    <script th:src="@{/js/IE9/html5.min.js}"></script>
    <script th:src="@{/js/IE9/respond.min.js}"></script>
    <![endif]-->
    <style>
        html, body {
            width: 100%;
            height: 100%;
            overflow: hidden
        }

        body {
            background: #1E9FFF;
        }

        body:after {
            content: '';
            background-repeat: no-repeat;
            background-size: cover;
            -webkit-filter: blur(3px);
            -moz-filter: blur(3px);
            -o-filter: blur(3px);
            -ms-filter: blur(3px);
            filter: blur(3px);
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: -1;
        }

        .layui-container {
            width: 100%;
            height: 100%;
            overflow: hidden
        }

        .admin-login-background {
            width: 360px;
            height: 300px;
            position: absolute;
            left: 50%;
            top: 35%;
            margin-left: -180px;
            margin-top: -100px;
        }

        .logo-title {
            text-align: center;
            letter-spacing: 2px;
            padding: 14px 0;
        }

        .logo-title h1 {
            color: #1E9FFF;
            font-size: 25px;
            font-weight: bold;
        }

        .login-form {
            background-color: #fff;
            border: 1px solid #fff;
            border-radius: 3px;
            padding: 14px 20px;
            box-shadow: 0 0 8px #eeeeee;
        }

        .login-form .layui-form-item {
            position: relative;
        }

        .login-form .layui-form-item label {
            position: absolute;
            left: 1px;
            top: 1px;
            width: 38px;
            line-height: 36px;
            text-align: center;
            color: #d2d2d2;
        }

        .login-form .layui-form-item input {
            padding-left: 36px;
        }

        .captcha {
            width: 60%;
            display: inline-block;
        }

        .captcha-img {
            display: inline-block;
            width: 34%;
            float: right;
        }

        .captcha-img img {
            height: 34px;
            border: 1px solid #e6e6e6;
            height: 36px;
            width: 100%;
        }

        .otherAppIcon {
            width: 32px;
        }
    </style>
</head>
<body>
<div class="layui-container">
    <div class="admin-login-background">
        <div class="layui-form login-form">
            <form class="layui-form" th:action="@{/user/login}" method="post">
                <div class="layui-form-item logo-title">
                    <h1>用户登录</h1>
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-username"></label>
                    <input type="text" name="username" lay-verify="required|account" placeholder="用户名"
                           autocomplete="off" class="layui-input" th:value="${param.username}">
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-password"></label>
                    <input type="password" name="password" lay-verify="required|password" placeholder="密码"
                           autocomplete="off" class="layui-input">
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-vercode"></label>
                    <input type="text" name="captcha" lay-verify="required|captcha" placeholder="图形验证码"
                           autocomplete="off" class="layui-input verification captcha">
                    <div class="captcha-img" onclick="replaceVerifyCodeImg()">
                        <img id="captchaPic" th:src="@{/file/getCaptchaImg}">
                    </div>
                </div>
                <div class="layui-form-item" style="text-align: right;">
                    <span><a th:href="@{/forgetPwd.html}">忘记密码?</a></span>
                </div>
                <div class="layui-form-item">
                    <button class="layui-btn layui-btn-normal" lay-submit=""
                            lay-filter="login" style="width:45%;margin-left: 3%">登 入
                    </button>
                    <a class="layui-btn layui-btn-primary layui-border-blue"
                       th:href="@{/register.html}" style="width:45%">注册</a>
                </div>
            </form>
            <div>
                <span>第三方登录</span>
                <a th:href="@{/oauth/render/gitee}"><img class="otherAppIcon" style="margin-left: 50%"
                                                         th:src="@{/gitee.png}">
                </a>
                <a th:href="@{/oauth/render/aliyun}"><img class="otherAppIcon" style="margin-left: 3%;"
                                                          th:src="@{/aliyun.png}"></a>
                <!--                <a th:href="@{/oauth/render/oschina}"><img class="otherAppIcon" style="margin-left: 3%;"-->
                <!--                                                          th:src="@{/oschina.png}"></a>-->
            </div>
        </div>
    </div>
</div>
<script th:src="@{/js/jquery/jquery.min.js}" charset="utf-8"></script>
<script th:src="@{/layui/layui.js}"></script>
<script th:src="@{/js/jq-module/jquery.particleground.min.js}" charset="utf-8"></script>
<script type="text/javascript" th:inline="javascript">
    let basePath = [[${#httpServletRequest.getContextPath()}]];

    window.onload = (function () {
        let HandlerInterceptor = [[${Interceptor_msg}]];
        let login_msg = [[${session.login_msg}]];
        let Auth_msg = [[${errorMsg}]]
        if (login_msg != "" && null != login_msg) {
            layui.layer.msg(login_msg);
        }
        if (HandlerInterceptor != "" && null != HandlerInterceptor) {
            layui.layer.msg(HandlerInterceptor);
        }
        if (Auth_msg != "" && null != Auth_msg) {
            layui.layer.msg(Auth_msg, {time: 2000});
        }
    });
    layui.use(['form'], function () {
        var form = layui.form,
            layer = layui.layer;

        // 登录过期的时候，跳出ifram框架
        if (top.location != self.location) top.location = self.location;

        // 粒子线条背景
        $(document).ready(function () {
            $('.layui-container').particleground({
                dotColor: '#7ec7fd',
                lineColor: '#7ec7fd'
            });
        });

        // 进行登录操作
        form.on('submit(login)', function (data) {
            data = data.field;
            if (data.username == '') {
                layer.msg('用户名不能为空');
                return false;
            }
            if (data.password == '') {
                layer.msg('密码不能为空');
                return false;
            }
            if (data.captcha == '') {
                layer.msg('验证码不能为空');
                return false;
            }
            // layer.msg('登录成功', function () {
            //     window.location = '../index.html';
            // });
            let loginLayer;
            loginLayer = layui.layer.msg('正在登录', {icon: 16, shade: 0.01, time: 0});
            $.ajax({
                type: "POST",
                url: basePath + '/user/login',
                data: {
                    "username": data.username,
                    "password": data.password,
                    "captcha": data.captcha
                },
                success: function (result) {
                    layui.layer.close(loginLayer);
                    console.log(result);
                    let jsonData = JSON.parse(result);
                    if (jsonData.code == 1) {
                        //成功
                        layui.layer.msg(jsonData.msg, {icon: 1, time: 1000}, function () {
                            window.location = basePath + '/user/toArticle';
                        });
                    } else {
                        //失败
                        replaceVerifyCodeImg();
                        layer.msg(jsonData.msg, {icon: 2, time: 1000});
                    }
                },
                error: function (arg) {
                    layui.layer.close(loginLayer);
                    layer.msg(arg);
                }
            });
            return false;
        });
    });

    //更新验证码
    function replaceVerifyCodeImg() {
        $("#captchaPic").attr('src', basePath + "/file/getCaptchaImg" + "?" + Math.random());
    }
</script>
</body>
</html>